home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Deutsche Edition 1
/
Deutsche Edition 1.iso
/
time
/
time_41-50
/
time_48
/
screenmod
/
screenmod.docs
< prev
next >
Wrap
Text File
|
1993-11-04
|
16KB
|
363 lines
======================================
= ScreenMod v1.0 =
= ~~~~~~~~~ ~~~~ =
= Program and Documentation by: =
= Syd L. Bolton =
= =
= Copyright ©1991 =
= Legendary Design Technologies Inc. =
= Freely Redistributable =
======================================
WHAT IS SCREENMOD?
~~~~~~~~~~~~~~~~~~
ScreenMod is a small utility program that was developed primarily
to change the position of a custom screen opened by another program. Some
PAL utilities open their screens so low that most of the gadgets are
unreachable by the mouse. Using a PAL-BOOT program doesn't always help
the situation. Not everybody is able to permanently alter someone's
executable code (especially if it's compressed in some form or another)
and that is why ScreenMod came to life.
ScreenMod allows you to change several parameters of any screen
that has been opened. You can change the TOPEDGE parameter, and the
LEFTEDGE parameter (although at the time of writing, changing the LEFTEDGE
parameter of a screen has no effect since the operating system does not
support it yet, but someday ...). You can even manipulate the display modes,
such as HAM and HIRES, and adjust the palette of any screen -- even if it
normally does not allow this.
ScreenMod also allows you to save the changes you've made to a
file, which can then later be called by a companion program called
ScreenSet. This has been set up so that you can create a batch file
to run your application program first, and then ScreenSet will put any
of the changes you have made into effect. See the separate ScreenSet
documentation for more details.
GETTING STARTED WITH SCREENMOD
~~~~~~~ ~~~~~~~ ~~~~ ~~~~~~~~~
ScreenMod can be run from the CLI or Workbench, although full
Workbench support has not yet been implemented. Refer to the "FEATURES
TO BE ADDED" section of this documentation for more details.
When you first run ScreenMod it will open its own custom screen
using 2 BITPLANES and a RESOLUTION of 640 X 200. The program contains
an "ICONIFY" feature that will close the main screen and open a small
window in the Workbench title bar. Normally, this feature is selected
through the SPECIAL menu (or Right-Amiga-I) but ScreenMod can be told
from startup to be iconified. To do this, when you run the program
just specify the "small" option. For example:
1>screenmod small
^---- This parameter causes ScreenMod to start in an
ICONIFIED state.
With this release, starting up in an ICONIFIED state from Workbench
is not possible.
If the program is iconified, and you wish to return it to its full
screen, you must do two things:
1) Activate the small ScreenMod window, by clicking the left button
somewhere in the title bar.
2) Click the RIGHT BUTTON to tell ScreenMod to UN-ICONIFY.
THE MAIN SCREEN
~~~ ~~~~ ~~~~~~
On the left-hand side of the screen, you will see a listing of
all available screens that are currently opened. They are ordered the
way the operating system orders screens: The front screen is listed first,
and then the screen behind that one is next, and so on. Note that the
"SCREENMOD" screen itself will ALWAYS be the first one on the list.
You will see the NAME of the screen and the RESOLUTION. If the
screen does not actually have a title, ScreenMod will put in "** NO NAME **"
in it's place.
To make an alteration to a screen, you first decide which screen
you would like to change, and then click the left button on it's title
on the left-hand side of the screen. The "settings" will all change
accordingly on the right-hand side.
THE PARAMETERS AND WHAT THEY MEAN
~~~ ~~~~~~~~~~ ~~~ ~~~~ ~~~~ ~~~~
LEFT EDGE: The number of pixels the screen is offset from the left. Please
note this feature is not currently implemented in the operating system,
and changing its value will have no effect. It DOES however ask the
operating system to make the change so when it is implemented, this program
should still be compatible.
TOP EDGE: This is one you may play with a lot. It indicates the number of
raster lines (pixels) the screen is offset from the top of the display.
For most screens this will be 0, but for some it will be another value.
Try changing ScreenMod's value to say 10, and then REMAKE the screen.
WIDTH: The width of the screen, in pixels. Note that playing with this
parameter will NOT have many useful effects. If you make the WIDTH
wider than what it normally is, ScreenMod does NOT allocate the extra
memory that would be required. This would require closing all windows
on the display, closing the screen, then re-opening it with the new
memory allocation and then re-opening the windows -- a daunting task,
especially if the programmer puts things other than standard INTUITEXT
and GADGET structures on the screen (which most do). If someone has
any thoughts on this, I would love to hear them. Perhaps it wouldn't
be too hard to allocate the new memory and append it?
HEIGHT: This is the height of the screen, in pixels. The same notes apply
as to the WIDTH, above. Experimenting with this value can produce some
interesting results though.
DETAILPEN: This is the color register number that the operating system
uses when drawing things like the title of the Screen.
BLOCKPEN: This is the color register number that the operating system
uses when drawing things like the background of the Screen Title.
DEFAULT TITLE & TITLE: These are simply the name of the Screen. Keep
in mind that often times the ACTUAL name of the screen is covered up
by a window. ScreenMod will have no effect on WINDOW titles, only
SCREEN titles. Secondly, some programs have turned the screen title
OFF to allow a fuller display on the screen (for titling programs and
so on). ScreenMod will ONLY UPDATE THE TITLE if the program has allowed
the SCREEN TITLE TO SHOW.
DEFAULT FONT: This is the default font that this screen uses, but is
not currently supported in this release.
And now for the VIEW MODE flags:
HIRES: This flag should be turned ON if the screen width is greater than
320 pixels.
INTERLACE: This flag should be turned ON if the screen height is greater
than 200 pixels. However, it will produce an interesting effect if
turned on when the screen is 200 pixels or less.
SPITES: This flag should be turned ON if this screen is to use hardware
sprites.
DUALPF: This flag should be turned ON if this screen uses dual playfields.
Dual playfields are often used in games where a "window" is necessary,
like for example the window of an aircraft. One playfield contains the
cockpit and the other playfield contains a view of the sky and/or ground.
When combined, the user sees the cockpit playfield which is in front,
and sees the sky/ground view playfield ONLY where the "window" of the
cockpit is.
HAM: This flag should be turned ON if the screen in question should be
in HAM mode (4096 colors).
EXTRA_HALFBRITE: This flag should be turned ON if this program is to use
the extra 32 colors available in EXTRA HALFBRITE mode.
*** NOTE: ***
Just because ScreenMod lets you modify the state of these flags
it does NOT mean that the program running with that screen will take
advantage of the changes. For example, you can't make DPAINT work in
HAM MODE just by changing the status of the screen. They are changeable
for experimentation purposes only although you may find some programs
that do neat things because of the changes you make.
VIEW SCREEN: By clicking this gadget, whatever screen you have highlighted
from the list will be moved to the front. To get back to the ScreenMod
screen, do one of two things:
1) Press any key on the keyboard
2) Click the RIGHT button.
Clicking the LEFT BUTTON will cause that screens windows to
become active, and then the only way back to the ScreenMod screen will be
with the LEFT-AMIGA-M and LEFT-AMIGA-N keys.
ADJUST PALETTE: This one is quite useful. It will bring the selected
screen to the front and open a palette adjuster screen, which originally
was written by Carolyn Schepper of Commodore, and subsequently modified.
Make any necessary palette changes, and hit CANCEL or OK and you
will be brought back to the ScreenMod screen. NOTE: Adjusting the
palette is the only modification to a screen that is IMMEDIATE. All
other parameters will not be changed until you hit REMAKE SCREEN.
UPDATE LIST: This gadget causes ScreenMod to re-read the list of screens
in memory. Use this feature when you have run another program that opens
up its own screen and you want to tell ScreenMod about it.
REMAKE SCREEN: This one will put all of your changes into effect. BE
CAREFUL!!! Some changes could potentially cause a system crash although
I never actually had it happen to me I have no doubt that playing with
some screens will cause some programs to upchuck and die. NEVER play
with ScreenMod without having any important files saved to disk.
THE MENUS
~~~ ~~~~~
Project
~~~~~~~
SAVE SETTINGS: This will bring up a window where you can type in a filename
that you would like ScreenMod to save all of the changes you have made
so that they can be put into effect later with ScreenSet.
HELP: This will bring up a simple reminder of the keyboard keys in the
program, which are listed below.
ABOUT: This tells you author and copyright information.
QUIT: You guessed it! Let's you shut down ScreenMod.
Special
~~~~~~~
ICONIFY: This feature will close the ScreenMod screen and open a small
window on the Workbench screen in the title bar. It will lie dormant
until you activate the window (left button click) and then press the
right button. Once this happens, the full screen will open back up.
To have the program start ICONIFIED, specify the parameter "SMALL" from
the CLI (as in "1>screenmod small").
KEYBOARD EQUIVALENTS
~~~~~~~~ ~~~~~~~~~~~
The following keys have been activated to do the same job as some of
the gadgets to make you keyboard fanatics happy:
R - REMAKE SCREEN
U - UPDATE LIST
A - ADJUST PALETTE
V - VIEW SCREEN
There is also a special key not available through a gadget:
ESC - Will reset ScreenMod's parameters. I put this in because I found
that sometimes when playing with ScreenMod's screen you could make it
impossible to reach some of the gadgets (this is also why I added
keyboard support) but if you really do some damage, pressing ESC will
RESET everything to normal.
WHAT THIS PROGRAM ISN'T
~~~~ ~~~~ ~~~~~~~ ~~~~~
This program was not designed to replace the fine utility
ScreenX by Steve Tibbett. If you want to PRINT SCREENS and SAVE SCREENS
to IFF, use ScreenX. It would be possible to add these features easily
to this program but I see no point in redoing what someone has already
more than adaquetely accomplished. If however, you would like to see
these features (or others added) please let me know. Make sure you
consult my "FEATURES TO BE ADDED" list first.
HOW THIS PROGRAM WORKS
~~~ ~~~~ ~~~~~~~ ~~~~~
The concept of how this program works is quite simple. ScreenMod
simply asks the operating system about the Screens in memory, and stores
their structures in an array. Through the use of INTUITION, it lets you
modify these structures and put the changes into effect. I discovered
however that just modifying the screen structure wasn't always good enough.
For example, in order to change the LEFT EDGE and TOP EDGE parameters, both
the SCREEN structure has to be modified, and the associated VIEW PORT
parameters must also be changed. A call to the "RemakeDisplay" function
in the operating system takes care of the rest. If you are a programmer,
try taking out the changes to the VIEW PORT structure, and watch what
effect changing the TOP EDGE parameter has. It is QUITE interesting.
HOW THIS PROGRAM WAS WRITTEN
~~~ ~~~~ ~~~~~~~ ~~~ ~~~~~~~
This program was developed on an Amiga 1000 with 2.5MB of RAM,
using CygnusED Professional Editor, from ASDG.
This program was compiled using MANX AZTEC C V5.0.
The interface was designed using POWERWINDOWS 2.5 from INNOVATRONICS.
FEATURES TO BE ADDED
~~~~~~~~ ~~ ~~ ~~~~~
Eventually, I would like to add some of the following features
to this program. If you're ambitious, maybe YOU would could add them
for me (or not).
1) Allow modification of the DEFAULT FONT, and add SIZE. Actually perform
a call to OpenFont or OpenDiskFont, so that all SUBSEQUENT changes in the
program would be in the new font.
2) Make ScreenSet work with PROJECT ICON's from Workbench.
3) Allow the program to start out ICONIFIED from Workbench (add a tool
type such as STARTUP=SMALL and STARTUP=NORMAL or something like that).
4) Allow control over bitplanes and actually re-allocate (or de-allocate)
any necessary memory (for width & height changes as well).
5) Make ScreenMod relenquish it's task so that just typing it's name
from the CLI would return the prompt.
6) Add a "TIMEOUT" feature to ScreenSet so that the Screen in question
does not have to be opened at the time ScreenSet is run.
7) Allow ScreenSet to work on multiple screen changes.
8) Either add to this program, or write a NEW program that allows this
same type on manipulation over Windows.
WHAT WE'RE WORKING ON
~~~~ ~~~~~ ~~~~~~~ ~~
Look soon for Legendary Design Technologies Inc. to be producing
some commerical software. The following titles are being worked on
and might be available "someday".
1) INVESTMENT ANALYZER - people complain not enough business software is
available for the Amiga. This one allows you to calculate ACTUAL rate
of return on investments, regardless of what types of commissions or
front-load fees are applied. Works with any kind of investment, but
most useful with Mutual funds.
2) FRACTAL CONSTRUCTION SET - Yes more fractals! But this one does
animation like a breeze, will save in ANIM format directly, and is
a complete tutor about fractals. Not only does it support Mandelbrot
and Julia sets, but Peano curves, Snowflake curves and so on and on!
3) KWIKCHANGE UTILITIES - We have already developed a converter to
change PAGERENDER 3D files to VIDEOSCAPE 3D files and vice versa.
Allows QUICK RENDER preview of the object in 3D, and will do multiple
files at once. ** THIS PRODUCT IS FINISHED -- IF YOU WOULD LIKE
FURTHER INFO PLEASE CALL OR WRITE **. We have also developed a package
that will take PRINTMASTER PLUS files and allow you save individual
files as IFF, or take IFF files and convert them to PRINTMASTER PLUS
format. Also supports PRINTSHOP from the Commodore 64 (both COMMODORE
and NON-COMMODORE graphic files). Supports IBM PM PLUS files too! Will
rotate and reverse the images as well, and includes a simple graphics editor.
Again, call or write for more details.
4) MARKS MASTER - The ultimate marks program for teachers. Includes
graphs, homeroom IDs, attendance sheets and so on. Even supports
POSTSCRIPT printers.
5) We are working on an incredible 3D system that can TRULY handle
curves. Any of you ever seen ALIAS? ... I'll say no more...
6) A multi-level fantasy adventure game. 3D perspective, great sounds,
auto-mapping and save game feature. 32 incredibly nasty monsters will
hinder your way, each with different intelligence and strategy.
7) We are working on developing games for the Atari Lynx portable
game system. I know, I know. ATARI. But remember, the development
system uses an Amiga and the thing was designed partly by Dave Needle
and RJ Mical of Amiga-fame. Uses a modified 6502 which makes us original
Commodore 64 assembly language programmers right at home!
8) We are also working on getting some sleep!
HOW TO REACH US
~~~ ~~ ~~~~~ ~~
Legendary Design Technologies Inc.
25 Frontenac Avenue
Brantford, Ontario
CANADA N3R 3B7
(519)-753-6120 (519)-754-4059 FAX
Have a heck of a day!
-Syd Bolton, President.